From 8833f0bb9226f2bceea72a0d63f57b23dafc0d58 Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Wed, 13 Jul 2005 15:02:49 +0000 Subject: [PATCH] Force PAE build of Xen by specifying 'pae=y' to make, or by setting XEN_TARGET_X86_PAE=y (e.g., in Config.mk). Signed-off-by: Keir Fraser --- Config.mk | 1 + Makefile | 4 ++++ xen/Rules.mk | 2 -- xen/arch/x86/Rules.mk | 9 +++++++++ 4 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Config.mk b/Config.mk index 390a9b3abe..facf5ec123 100644 --- a/Config.mk +++ b/Config.mk @@ -3,6 +3,7 @@ # Currently supported architectures: x86_32, x86_64 XEN_COMPILE_ARCH ?= $(shell uname -m | sed -e s/i.86/x86_32/) XEN_TARGET_ARCH ?= $(XEN_COMPILE_ARCH) +XEN_TARGET_X86_PAE ?= n # Tools to run on system hosting the build HOSTCC = gcc diff --git a/Makefile b/Makefile index ebba9ffe9c..5545aa4977 100644 --- a/Makefile +++ b/Makefile @@ -31,6 +31,10 @@ all: dist include Config.mk include buildconfigs/Rules.mk +ifeq ($(XEN_TARGET_X86_PAE),y) +export pae=y +endif + .PHONY: all dist install xen tools kernels docs world clean mkpatches mrproper .PHONY: kbuild kdelete kclean diff --git a/xen/Rules.mk b/xen/Rules.mk index 751bf460d3..d14d388017 100644 --- a/xen/Rules.mk +++ b/xen/Rules.mk @@ -51,7 +51,6 @@ ALL_OBJS += $(BASEDIR)/acm/acm.o endif ALL_OBJS += $(BASEDIR)/arch/$(TARGET_ARCH)/arch.o - test-gcc-flag = $(shell $(CC) -v --help 2>&1 | grep -q " $(1) " && echo $(1)) include $(BASEDIR)/arch/$(TARGET_ARCH)/Rules.mk @@ -91,4 +90,3 @@ CFLAGS := $(strip $(CFLAGS)) %.o: %.S $(HDRS) Makefile $(CC) $(CFLAGS) -D__ASSEMBLY__ -c $< -o $@ - diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk index 647640797d..0675d763cd 100644 --- a/xen/arch/x86/Rules.mk +++ b/xen/arch/x86/Rules.mk @@ -1,6 +1,12 @@ ######################################## # x86-specific definitions +# +# If you change any of these configuration options then you must +# 'make clean' before rebuilding. +# +pae ?= n + CFLAGS += -nostdinc -fno-builtin -fno-common -fno-strict-aliasing CFLAGS += -iwithprefix include -Wall -Werror -Wno-pointer-arith -pipe CFLAGS += -I$(BASEDIR)/include @@ -24,6 +30,9 @@ CFLAGS += $(call test-gcc-flag,-fno-stack-protector-all) ifeq ($(TARGET_SUBARCH),x86_32) CFLAGS += -m32 -march=i686 LDFLAGS += -m elf_i386 +ifeq ($(pae),y) +CFLAGS += -DCONFIG_X86_PAE=1 +endif endif ifeq ($(TARGET_SUBARCH),x86_64) -- 2.30.2